home *** CD-ROM | disk | FTP | other *** search
-
-
- DTC - The Desk Top Calendar
-
- Mitch Wyle
- Glenn Everhart
-
- January, 1984
-
-
- The idea here is to automate an appointment calendar. Most
- appointment calendars give only one of Month-At-A-Glance,
- Week-At-A-Glance, or Day-At-A-Glance. DTC is an attempt to
- give all of these functions in a paperless, fast, menu-driven
- format.
-
- This program is a straightforward desk calendar which is intended to
- allow a person or group to manage their appointments with half hour
- granularity. It requires a VT100 or other ANSI terminal, or can
- use the MSDOS ANSI.SYS device driver, since that supports the necessary
- cursor positioning. Data files are sequential and may be edited with
- ordinary editors, or transferred easily between machines; all data
- is ordinary ASCII text.
-
- DTC initially displays a command menu. The commands accept date
- arguments in any of 3 formats. The format labelled mmddyy would
- translate 031584 as March 15, 1984. In this format, notice the
- leading zeroes are required; otherwise the program cannot know
- where fields end.
- A second format is mm/dd/yy, in which one might write the date
- as 3/15/84. In this case, leading zeroes are optional. Both digits
- of year are however required.
- The third format is the RSX-11 date format, dd-mmm-yy, in which
- 3 letter month abbreviations are used. In this format, the date
- would be given as 15-MAR-84, which is easier yet. The date formats
- may be mixed and matched.
- DTC initially does not know the date; you enter it and it
- becomes the default date until changed. Thus, a command to display
- any date, as with the Day command (D) (see below) sets the
- date to the date selected. To set the date up and examine the
- appointments for today, just use the command
-
- D mm/dd/yy<cr>
-
- where <cr> means the return key, not the 4 letters "<cr>". This
- command sets the date and shows today's appointments.
- If you want to see this week's appointment times, type
- the command
-
- W<cr>
-
- and the times currently filled in will be shown. Evening appointments
- are all flagged as happening at 17:00 (5PM for those not used to 24
- hour time).
- To see the month's days having appointments, the command
-
- M<cr>
-
- can be given. This will display a calendar of the current month (with
- the last and next months drawn small at the page top) with asterisks
- by any dates on which there are appointments and a pound sign (#) by
- the current default date.
-
- To enter appointments on a given date and time, the command is
-
- D mm/dd/yy hh:mm appointment text
-
- where the D is a literal D (may be lower case too),
- the date is given in one of the legal formats and is
- the date of the appointment,
- hh:mm is the time of the appointment, from 08:00 to
- 17:00 (leading zeroes in hours are needed),
- and the part after the colon may be either
- 00 or 30. Thus, an appointment of 09:30 is
- legal, but one of 09:45 is NOT (appointments
- must be on half hour boundaries), and one of
- 9:30 is NOT (the hours must have leading zeroes).
- Afternoon appointments may be entered in either 12
- or 24 hour notation; they will be translated. If the
- string EV is used instead of an hour, an evening
- appointment is scheduled.
- appointment text is any text describing the appointment. Only
- 60 characters are available owing to screen size limits.
-
- For appointments longer than 30 minutes, one may use the time range
- notation hh:mm>hh:mm, where the second time is after the first.
- Thus a meeting running from 9:30AM to 11:00 AM could be entered as
- having a time of 09:30>11:00, followed by the text. The entry is placed
- in each slot automatically then.
-
-
- We will now go over the functions provided by DTC.
-
- Command Format Function
-
- Day D mmddyy Display appointments for the given date.
-
- Week W mmddyy Display appointment times for the week
- containing the given date, from Sunday
- through Saturday.
-
- Month M mmyy Draw a calendar of the month given
- (form mm/yy permitted too), showing days
- with appointments scheduled.
-
- Enter appts D mmddyy HH:MM text Enter appointment "text" on the
- given date and time (time may be a range
- h1:m1>h2:m2, e.g., 12:30>16:00 for
- longer meetings).
- NOTE:
- If the default date is already set to the desired date, the
- appointments may be entered in the abbreviated form:
- HH:MM text or
- EV text
- for appointments at the given time, or evening appointments.
- Time ranges may be used here too. This speeds the process of
- entering activities, since the date need not be re-entered.
- The + and - commands permit rapid movement in default dates
- as a further aid.
-
- Quit DTC Q Exits from DTC
- Exit DTC EX Exits DTC
-
- Year Y yy Displays year on screen (not functional
- on IBM and similar machines with small
- screens; DEC Rainbows can use this,
- however.)
-
- Today T mmddyy Displays reminders like Day command
- but then exits from DTC.
-
- Reminder R mmddyy Displays week's meeting times like W
- command, then exits DTC
-
- Calendar C mmyy Draws month calendar like M command,
- then exits DTC.
-
- Purge P mmddyy Erases old appointments prior to mmddyy,
- permitting cleanup of calendar file.
-
- Negate NW mmddyy Show free times available this week
- NM mmyy Show days with nothing scheduled this
- month (both use default date if none
- supplied). Showing free time within a
- Day format was deemed not useful, so
- it was left out there.
-
- File F filename Set DTC to use filename as its' data
- file containing appointments. Since
- an appointment file may contain pointers
- to multiple other files, this permits
- DTC to access files of appointments for
- different people or groups. The free
- time search and Locate function (below)
- then allow DTC to find times when
- meetings could be held among groups.
- Indirection is flagged by having year
- 99 for the appointment, and the filename
- is placed in the appointment field.
-
- Schedule S mmddyy hh:mm text Schedule meeting at given time
- with text. This command assumes that
- the current appointment file has
- pointers to a group's files of appoint-
- ments, and that it is desired to add
- the text for an appointment at the
- given hour to each, without using a
- series of F and D commands to drop the
- notices in each serially. DTC will put
- the notice in each indirected file, but
- NOT in the current top-level file of
- appointments. (The G command will
- place notices in both the indirected
- files and the top level one, and the D
- command places notices only in the
- top level one; the form of each is
- the same.)
-
- Locate L mmddyy nn Locates time for meetings. This command
- will find times, in the week containing
- the date mmddyy, when a meeting of nn
- half hour intervals may begin. The
- range of nn must lie between 01 and
- 18. The times shown are times in which
- no activities are scheduled in the top
- level data file or in any files to which
- it points. If the date is left out, the
- current date is used. For meeting
- scheduling, one would use the F command
- to set a file of pointers up as the
- current data file, pointing to a group's
- schedule files, then use the L command
- to find free time, and then use the S
- command to place notices of the meeting
- in all files.
-
- Reset default date +nnU Move default date forward or backward
- -nnU by nn Units. U may be D, W, M, or Y for
- Day, Week, Month or Year. + moves
- forward, - back. If the numeric nn is
- omitted, 1 is assumed, and the unit is
- assumed to be the last display used.
- Thus, just typing "+<cr>" after display
- of a week moves forward by one week.
- The nn field may be zero, one, or two
- digits and is in decimal. For example,
- the command
-
- +3D
- moves default date forward 3 days.
- These commands do not redraw any
- displays, so a new D, W, or M display
- is needed next to see the new date's
- appointment information.
-
- Output O Outputs current calendar onto a file
- DTC.OUT suitable for printing. Some
- calendar printouts for the current date
- precede the appointment list. Note this
- function is rather crude but useful.
-
- Help H Prints a short help message on the
- screen (from file DTC.HLP).
-
- 132 col 132 For DEC Rainbow users who have 132
- column capability, the 132 command
- allows use of wide screen mode and
- allows the Y (year at a glance) command
- to work. The 80 command resets.
- 80 col 80 This command resets 132 col max width.
- Note that wide screen mode is used
- only for the Year display even if
- the 132 command was given. The
- syntax of the Y command is Y yy
- (e.g., Y 84 displays a 1984 calendar.)
- IBM PC and similar machines can forget
- this, or go out and buy a Rainbow
- to gain better displays.
-
- POINTERS in CALENDAR FILES
- The calendar file format is sequential records of the format:
-
- YYMMDDTTTappointment text of 60 characters length
-
- in which every record has this form, and the time TTT is in the range
- (for correct files) of
- 080 through 170 (for 08:00 through 17:00). The third digit is always
- either 3 or 0 as well, since DTC only schedules half hour periods.
- Indirection is accomplished by editing your calendar file
- (with any editor) or just entering an "appointment" for year 99 (by which
- time somebody should have hacked some more on this to fix it up not
- to mess up real appointments). The text of the "appointment" should
- be just filespec=, with the = sign as the terminator of the file spec.
- This will lead to the file you specified being opened and treated as
- if it existed inside your own calendar file (except you need to use
- the S function rather than the D function to enter appointments in
- it as well as your own.)
-
-
- To use DTC, you need to create an empty DTC.DAT file
- first (and also any other calendar files you expect to need.)
- Any method will do, including using an editor to set it up. Just
- make up an empty file initially, possibly just copying from con:
- with a single return.
-
- Glenn Everhart
- RCA GSD Engineering 206-1
- Rt. 38
- Cherry Hill, NJ 08358
- 1/24/84
-